'use strict';
/*
*  Copyright (C) 1998-2021 by Northwoods Software Corporation. All Rights Reserved.
*/
// Unlike the other files in this directory,
// you must compile this file with:
// tsc -p .\tsconfigModule.json
import * as go from '../release/go.mjs';
export function init() {
    if (window.goSamples)
        window.goSamples(); // init for these samples -- you don't need to call this
    const $ = go.GraphObject.make; // for conciseness in defining templates
    const myDiagram = $(go.Diagram, 'myDiagramDiv', // create a Diagram for the DIV HTML element
    {
        'undoManager.isEnabled': true // enable undo & redo
    });
    // define a simple Node template
    myDiagram.nodeTemplate =
        $(go.Node, 'Auto', // the Shape will go around the TextBlock
        $(go.Shape, 'RoundedRectangle', { strokeWidth: 0 },
        // Shape.fill is bound to Node.data.color
        new go.Binding('fill', 'color')), $(go.TextBlock, { margin: 8 }, // some room around the text
        // TextBlock.text is bound to Node.data.key
        new go.Binding('text', 'key')));
    // but use the default Link template, by not setting Diagram.linkTemplate
    // create the model data that will be represented by Nodes and Links
    myDiagram.model = new go.GraphLinksModel([
        { key: 'Alpha', color: 'lightblue' },
        { key: 'Beta', color: 'orange' },
        { key: 'Gamma', color: 'lightgreen' },
        { key: 'Delta', color: 'pink' }
    ], [
        { from: 'Alpha', to: 'Beta' },
        { from: 'Alpha', to: 'Gamma' },
        { from: 'Beta', to: 'Beta' },
        { from: 'Gamma', to: 'Delta' },
        { from: 'Delta', to: 'Alpha' }
    ]);
    // Attach to the window for console manipulation
    window.myDiagram = myDiagram;
}
